Tracing gathers information about how an application executes within a computer system. Tracing data may include any type of data that may explain how the application operates, and such data may be analyzed by a developer during debugging or optimization of the application. Tracing data may also be used by an administrator during production operation of the application to identify various problems.
Tracing that occurs during development and debugging can be very detailed. In some cases, the tracing operations may adversely affect system performance, as the tracing operations may consume large amounts of processing, storage, or network bandwidth.